Peer-to-peer delivery for sales consultant users

ABSTRACT

A mobile application may be used to track sales consultants&#39; businesses, such as by tracking a local inventory maintained by the consultant. Determining whether local inventory is sufficient for fulfilling a sales order may be assisted by updating a database of the application with restocking information. The local inventory may be insufficient for fulfilling some sales orders. However, other sales consultants&#39; inventory may be checked to identify peer consultants who may be able to assist in completing the sales order by performing peer-to-peer delivery of some or all items in a sales order.

CROSS-REFERENCE TO RELATED PATENT APPLICATIONS

This application claims the benefit of U.S. Provisional Patent Application No. 62/361,431, filed Jul. 12, 2016. This application is related by subject matter to U.S. patent application Ser. No. 15/248,871, filed Aug. 26, 2016. The contents of the referenced applications are incorporated into the present application by reference.

FIELD OF THE DISCLOSURE

The instant disclosure relates to software. More specifically, portions of this disclosure relate to software for assisting sales persons with managing commerce, such as tracking customers, managing inventory, and fulfilling orders.

BACKGROUND

Electronic commerce has opened new possibilities for selling products to large markets without maintaining physical presences in multiple locations. Purchasers can visit a seller's website, place orders, and receive merchandise regardless of the distance between the buyer's physical location, the seller's physical location, and the physical location of the goods. Because of the access to large markets and convenience of shopping on the Internet, electronic commerce has taken market share from traditional brick-and-mortar stores. The conventional electronic commerce model is to have goods located at one or a few central warehouses. When an order is received through the Internet the goods are collected, boxed, and delivered to the buyer. However, a consequence of the purchaser not being present at a store where the goods are located is that the goods are not instantly available to the purchaser. Boxing and delivery of the goods conventionally takes at least 1-2 days, if not more. Customers often want the thrill of receiving goods immediately, or may have an immediate need for the good.

SUMMARY

Sales consultants may be provided access to computer software to track local inventory and fulfill orders from multiple fulfillment sources, which may include fulfilling from a local inventory. Determining whether local inventory is sufficient for fulfilling a sales order may be assisted by updating a database with restocking information. Such restocking information may be obtained using a camera of the mobile device to scan a barcode, to scan a QR code, or to recognize text on a package. Information in the picture may be associated with inventory restocking information or be used to fetch information restocking information.

Using local stock information, peer-to-peer delivery may be possible by identifying nearby sales consultants with local inventory for sold items to enable rapid delivery of the sold items. The local stock information may be tracked by a server, which can identify consultants for peer-to-peer delivery of items from a sales order. The server may include memory, one or more network communications adapters, and a processor configured to perform methods for tracking local stock information and coordinating peer-to-peer delivery. A method of operating a server for coordinating peer-to-peer delivery between sales consultants operating a first device and a second device may include receiving, by the server from the first device, first local stock information for goods stocked by a first sales consultant user. The method may also include receiving, by the server from the first device, an indication of goods in a sales order for a customer of the first sales consultant user that cannot be fulfilled by the first sales consultant user according to the first lock stock information. The method may further include determining, by the server, whether the sales order can be fulfilled at least in part from a second local stock information for goods stocked by a second sales consultant user. The method may also include transmitting, by the server to a second device, a request for the second sales consultant user to deliver the goods to the customer when the sales order can be fulfilled at least in part by the second sales consultant user. The local stock information may also be tracked by individual devices and communicated between devices to allow coordination of peer-to-peer delivery.

In one example of the present invention, a sales consultant may initiate peer-to-peer delivery by making requests to a server or other consultants' devices for items from a sales order. A first device of a first sales consultant may coordinate with other devices by executing a method including receiving, by the first device, customer information for a plurality of customers associated with a first sales consultant user. The method may also include receiving, by the first device, local stock information for goods stocked by the first sales consultant user. The method may further include receiving, by the first device, a sales order for a customer of the plurality of customers, wherein the sales order lists one or more sold items. The method may also include determining, by the first device, whether the goods stocked by the first sales consultant user listed in the local stock information are sufficient to fulfill the received sales order. The method may further include transmitting, by the first device, a request for at least one of the one or more sold items from a second sales consultant user when the goods stocked by the first sales consultant user are determined insufficient to fulfill the received sales order. The method may be implemented in, for example, computer software code in a computer program product that is loaded and executed by a computing device, such as a smart phone.

The foregoing has outlined rather broadly certain features and technical advantages of embodiments of the present invention in order that the detailed description that follows may be better understood. Additional features and advantages will be described hereinafter that form the subject of the claims of the invention. It should be appreciated by those having ordinary skill in the art that the conception and specific embodiment disclosed may be readily utilized as a basis for modifying or designing other structures for carrying out the same or similar purposes. It should also be realized by those having ordinary skill in the art that such equivalent constructions do not depart from the spirit and scope of the invention as set forth in the appended claims. Additional features will be better understood from the following description when considered in connection with the accompanying figures. It is to be expressly understood, however, that each of the figures is provided for the purpose of illustration and description only and is not intended to limit the present invention.

BRIEF DESCRIPTION OF THE DRAWINGS

For a more complete understanding of the disclosed system and methods, reference is now made to the following descriptions taken in conjunction with the accompanying drawings.

FIG. 1 is an illustration of a business model involving a sales consultant user according to some embodiments of the disclosure.

FIG. 2 is a screenshot of an example mobile application for a sales consultant user to manage orders and local inventory according to one embodiment of the disclosure.

FIG. 3 is a screenshot of an example menu for a sales consultant user to interact with a mobile application to provide user input according to one embodiment of the disclosure.

FIG. 4 is a screenshot of an example use of a camera for identifying product information according to one embodiment of the disclosure.

FIG. 5 is a screenshot of an example use of a camera for identifying contents of a replenishment shipment according to one embodiment of the disclosure.

FIG. 6A is an illustration of a packing label with a barcode for tracking a replenishment shipment according to one embodiment of the disclosure.

FIG. 6B is an illustration of a packing box with information for tracking a replenishment shipment according to one embodiment of the disclosure.

FIG. 7 is a flow chart illustrating an example method for tracking local inventory for a sales consultant user according to one embodiment of the disclosure.

FIG. 8 is a flow chart illustrating an example method for placing an order with a sales consultant user according to one embodiment of the disclosure.

FIG. 9 is a screenshot of an example use of a mobile device to complete an order according to one embodiment of the disclosure.

FIG. 10 is a screenshot of an example use of a mobile device to determine fulfillment methods for parts of an order according to one embodiment of the disclosure.

FIG. 11 is a flow chart illustrating an example method for fulfilling an order using multiple available fulfillment methods according to one embodiment of the disclosure.

FIG. 12 is a flow chart illustrating an example method for determining contents of a replenishment order for a sales consultant user according to one embodiment of the disclosure.

FIG. 13 is a screenshot of an example use of a mobile device to specify a replenishment order according to one embodiment of the disclosure.

FIG. 14 is a screenshot of example push notifications providing information regarding local inventor to a sales consultant user according to one embodiment of the disclosure.

FIG. 15 is an illustration of a business model involving a sales consultant user with peer-to-peer delivery through a fulfillment consultant according to some embodiments of the disclosure.

FIG. 16 is a flow chart illustrating an example method for peer-to-peer delivery by a fulfilment consultant according to some embodiments of the disclosure.

FIG. 17 is a call diagram illustrating communications between consultants and a server for organizing peer-to-peer delivery according to some embodiments of the disclosure.

FIG. 18 is a flow chart illustrating an example method for identifying consultants for completing a peer-to-peer delivery request according to some embodiments of the disclosure.

FIG. 19 is an illustration of direct communications between consultants for organizing peer-to-peer delivery according to some embodiments of the disclosure.

FIG. 20 is an illustration of relay communications between consultants for organizing peer-to-peer delivery according to some embodiments of the disclosure.

DETAILED DESCRIPTION

FIG. 1 is an illustration of a business model involving sales consultant users according to some embodiments of the disclosure. Sales consultant users 112 may be located throughout a geographical region. These sales consultant users 112 may store goods in local inventory 110 at diverse geographical locations. Goods may also be stored in one or a few central warehouses 102. Goods may be delivered from the warehouse central inventory 102 in replenishment packages 114 to restock local inventory 110 of the sales consultant users 112. The local inventory 110 for each sales consultant user 112 may be customized to each consultant's business and/or customers. The sales consultant users 112 may make sales to customers 122 through meetings. These sales may be fulfilled from local inventory 110 or central inventory 102. Further, different fulfillment methods may be used to fulfill orders from the inventories 102 and 110. For example, when an order is fulfilled from local inventory 110 the goods may be hand-delivered or shipped. As another example, when an order is fulfilled from central inventory 102 the order may require interaction with the sales consultant user 112 or the order may be automatically shipped without interaction from the sales consultant user 112. The multitude of options for delivering goods from such a business model improves upon the conventional electronic commerce model. However, implementing and managing the multitude of fulfillment techniques requires new technology. Embodiments of the invention describe herein address techniques for managing commerce through different fulfillment methods. Further, embodiments of the invention may support fulfillment of goods from sales consultant users for Internet-based sales orders.

FIG. 2 is a screenshot of an example mobile application for a sales consultant user to manage orders and local inventory according to one embodiment of the disclosure. A user interface 202 may be displayed on a mobile device 200 for managing a sales consultant user's business. The user interface 202 may include menus relating to customers, orders, product catalog, managing inventory, and tracking reminders and tasks associated with customers or other aspects of the consultant's business, among other options. For example, the user interface 202 may provide access to further aspects of a mobile application or other mobile applications that allow searching for customers, orders, or products, using a camera to scan products or shipping labels, adding customers, starting new orders, organizing customers, connecting with customers, managing orders, creating orders, browsing a product catalog, tracking local inventory, tracking tasks, receiving reminders, receiving notifications, editing a profile, and managing security settings. As another example, the user interface 202 may provide access to search functionality for text-based searching a database for customer information, previous sales orders, and other information by receiving a text string and displaying results. A pop-up button 204 may be provided in portions of the mobile application for quickly accessing certain features. In some embodiments, the pop-up button 204 may be present throughout operation of the mobile application. Clicking, touching, or otherwise activating the pop-up button 204 may cause a menu to be displayed, such as the menu shown in FIG. 3.

FIG. 3 is a screenshot of an example menu for a sales consultant user to interact with a mobile application to provide user input according to one embodiment of the disclosure. A menu 300 may be overlaid on the mobile application, and display of the menu 300 may include darkening, dimming, blurring, or otherwise obscuring the main display of the mobile application. The menu 300 may include a plurality of command buttons 302A-E and a close button 302F. The command buttons 302A-E may provide easy access to frequently used tasks. In some embodiments, the commands associated with buttons 302A-E may be fixed. In some embodiments, the commands associated with buttons 302A-E may be dynamic and personalized to a particular sales consultant user or group of sales consultant users. In the example menu 300 shown in FIG. 3, the command buttons 302A-E may correspond to commands for adding a new customer, creating a new order, taking a picture, creating a reminder, and adding a note, respectively. The close button 302F may be activated to close the menu 300 and return to the user's prior screen in the mobile application or a home screen of the mobile application. When the user clicks command button 302C for taking a picture, the mobile device may activate a camera and assist the user in taking a picture. The image data of the picture may be processed to obtain information used by the mobile application. In one example, a picture may be processed to identify a product in a picture and recall information about that product. In another example, a picture may be processed to identify a package and recall information about replenishment goods contained in the package, which may then be used to update a database of goods in local inventory. These examples are illustrated and described in more detail with reference to FIG. 4 and FIG. 5 below.

The camera of a mobile device may be used by the mobile application to assist a sales consultant user in identifying a product. After clicking the command button 302C to take a picture, or otherwise activating the camera, the user may take a picture of a product. The picture of the product may be processed, either locally by the mobile application or remotely by a server, to identify the product and obtain information about the product and display information in a user interface as shown in FIG. 4. FIG. 4 is a screenshot of an example use of a camera for identifying product information according to one embodiment of the disclosure. A first screen 410 may include a portion or all of the picture taken by the user in a first area 412 and include an identification of the product in a second area 414. The product identification in area 414 may include product name, product color, product identifier or SKU, and/or product retail price. Further, the product information in area 414 may include information unique to a sales consultant user, such as an indication 416 of quantity of the product available in the consultant's local inventory. A button 418 may be activated to provide further information regarding the identified product, related products, or variations of the product in a second screen 420. For example, the second screen 420 may include a first area 422 displaying the product details similar to area 414 of the first screen 410, such as to provide continuity between the screens 410 and 420, while additional information is displayed in a second area 424. The second area 424 may include a listing of other colors available for the identified product and information regarding local inventory availability of the product. The information regarding local inventory for the product in screens 410 and 420 may be retrieved from a local database stored on the mobile device or a remote database stored on a server. Regardless of the location of the database, the inventory information may be personalized to the sales consultant user operating the mobile device.

The camera of a mobile device may also or alternatively be used by the mobile application to assist a sales consultant user in tracking local inventory. For example, when the consultant's local inventory is replenished through received packages, the consultant may scan the package and the contents of the package identified and automatically updated in the database of local inventory. The contents of the replenishment package or other information regarding local inventory may be displayed in a user interface as shown in FIG. 5. FIG. 5 is a screenshot of an example use of a camera for identifying contents of a replenishment shipment according to one embodiment of the disclosure. A first screen 510 may include a portion or all of the picture taken by the user in a first area 512 and include an identification of the package in a second area 514. For example, when a barcode for the package is identified in the picture, the second area 514 may include information regarding the package, such as date shipped, number of items in shipment, and/or tracking information for the package. A button 516 may be activated to provide further information regarding the replenishment goods in a second screen 520. For example, the second screen 520 may include a first area 522 displaying the package details similar to area 514 of the first screen 510, such as to provide continuity between the screens 510 and 520, while additional information is displayed in a second area 524. The second area 524 may include a listing of the actual items contained in the package and ready to be added to the consultant's local inventory. When a user clicks a button 526, the contents of the local inventory database are updated to reflect the contents of the replenishment package.

The mobile device's camera may be used in different manners to capture information regarding a replenishment package. For example, a packaging label may be scanned to identify a package and its contents. An example packaging label is shown in FIG. 6A. FIG. 6A is an illustration of a packing label with a barcode for tracking a replenishment shipment according to one embodiment of the disclosure. In some embodiments, a barcode used by the shipping company may also be used to identify the package that may also be used by the mobile application to identify the package. For example, the shipping company tracking number may be stored by the supplier along with information about the replenishment products contained in the package. When the mobile application identifies the tracking number associated with the scanned barcode, the tracking number may be used to look-up information about the contents of the package. In another example, a separate barcode may be printed on a package, separate from the tracking information added by the shipping company. The barcode may contain encoded information regarding the contents of the package, or the barcode may contain an embedded identification number that may be used to look-up an associated list of package contents. Although a barcode is described in the described embodiments, the barcode may include any number of identification techniques, including conventional barcodes and QR barcodes.

Another example packaging label is shown in FIG. 6B. FIG. 6B is an illustration of a packing box with information for tracking a replenishment shipment according to one embodiment of the disclosure. The camera may capture a box top or side of the replenishment goods or package and use information on the box to determine what goods were received. For example, a consultant may take a picture of each of the goods in the replenishment package, and information on the goods used to identify the products and update local inventory. As shown in FIG. 6B, the goods may include a description 602 on a box 600 that may be used to identify the product. The description 602 may include a product SKU number or a text description of the product, either of which may be recognized by performing optical character recognition (OCR) on the picture.

An example method for managing local inventory by updating a database when new replenishment shipments are received as described above is shown in FIG. 7. FIG. 7 is a flow chart illustrating an example method for tracking local inventory for a sales consultant user according to one embodiment of the disclosure. A method 700 may begin at block 702 with receiving an indication of a new shipment for replenishing local inventory. Block 702 may include, for example, receiving input from a user that a package has arrived or receiving a picture taken by a user. Then, at block 704, an image is received that contains information for updating a database of local inventory to reflect contents of the shipment. Block 704 may include, for example, identifying a tracking number, a QR code, a barcode, a product label, or the like. Next, at block 706, that information is decoded to obtain contents of the replenishment shipment. For example, the QR code may be decoded to obtain a listing of goods in the package. As another example, the tracking number may be used to look-up contents associated with the package from a supplier's database. Then, at block 708, the database of the local inventory is updated with contents of the new shipment.

The mobile application may also or alternatively be used to enter and track sales orders associated with the sales consultant user. Through the user interface, the consultant may be able to fulfill orders through several fulfillment methods, some of which may include the consultant's local inventory. One example method for obtaining orders is shown in and described with reference to FIG. 8. FIG. 8 is a flow chart illustrating an example method for placing an order with a sales consultant user according to one embodiment of the disclosure. A method 800 begins at block 802 with receiving customer data, such as customer name, customer address, customer birthday, etc. Then, at block 804, a sales order may be received for a customer identified at block 802. The sales order may include a list of products desired by the customer, an indication of payment for the products, and other information regarding the sales order. Alternatively, the received sales order may be a re-order of a previous sales order referenced by an order identifier. Next, at block 806, a selection of a fulfillment method may be received that corresponds to the sales order of block 804. Several fulfillment methods may be available including, for example, fulfillment from a central warehouse and fulfillment from local inventory. Further, a combination of fulfillment methods may be used to complete a sales order. Then, at block 808, additional data regarding a sales order may be received, such as discount, shipping information, and/or estimated tax information. Next, at block 810, the sales order may be transmitted. For example, when blocks 802, 804, 806, and 810 are performed through a mobile application of a mobile device, block 808 may include transmitting the sales order to a server, for example, for recording the order and/or verifying payment information for the sales order.

Referring back to block 806 regarding selection of a fulfillment method, when a sales order may be completely filled from local inventory, the sales consultant user may accept payment and distribute the goods, such as by shipping or personally delivering items from the sales order from local inventory. If complete fulfillment from local inventory is not available, partial delivery may be made from local inventory. If the sales consultant user does not have certain products in local inventory, she can designate items in the sales order that have been delivered. The sales order may remain pending while a replenishment package is obtained to stock local inventory with the remaining items, from which the sales order may be completed.

The sales consultant user may also choose to fulfill sales orders through other options. For example, sales orders may be filled from a warehouse that services multiple sales consultant users. The warehouse may fulfill the sales order through one of several methods. One manner may be a customer delivery service (CDS) that fulfills sales orders by a supplier on behalf of the sales consultant users. Another manner may be an EZShip service that fulfills sales orders by the supplier on behalf of the sales consultant users. Orders for fulfillment from a central warehouse may be received by entry from a sales consultant user into the mobile application or through another channel, such as an Internet web page associated with the sales consultant user. In addition to these sales order fulfilment processes, a guest checkout may be available. This order type may involve a customer shopping on a sales consultant user's personal web site who does not register as a customer, but places an order and selects to check out as a guest. This order may be fulfilled from the warehouse by the supplier on behalf of the sales consultant user. Sales consultants are actively involved in sales transactions with customers for each of the CDS, EZShip, and guest checkout options.

Referring back to block 808 of FIG. 8, when sales orders are received through the mobile application or other channels, a sales consultant user may specify certain aspects of the sales order by providing additional information regarding the sales order. FIG. 9 is a screenshot of an example use of a mobile device to complete an order according to one embodiment of the disclosure. A user interface 900 illustrates completion of a sales order through a mobile application. A first area 902 of the user interface 900 shows the products selected for the order, including quantity, price, and delivery status. Other aspects of the sales order may be specified by the sales consultant user, including a discount in area 904, a shipping cost in area 906, and/or estimated taxes in area 908.

Fulfillment and local inventory information may be displayed in a user interface along with the sales order. FIG. 10 is a screenshot of an example use of a mobile device to determine fulfillment methods for parts of an order according to one embodiment of the disclosure. A user interface 1000 may include a first area 1002 indicating a customer associated with a sales order displace in a second area 1004. The second area 1004 may display individual products that are part of the sales order, along with, for example, a requested quantity and retail price. The second area 1004 may also include, for some or all of the products, local inventory information and information regarding available fulfillment manners. The example of interface 1000 illustrates in region 1004A that one of the ordered products has two units available in local inventory and that the product is not available through CDS fulfilment. The example of interface 1000 illustrates in region 1004B that one of the ordered products has no units available in local inventory. A third area 1006 allows the consultant to determine a fulfillment manner for the sales order. For example, the consultant may determine to fulfill the order, or portions of the order, from local inventory by selecting button 1006A or to fulfill the order, or portions of the order, from CDS by selecting button 1006B.

Several embodiments of a mobile application, operation of a mobile device, and communication between the mobile device and a server have been described above. These embodiments include technological improvements that allow a mobile application to track local inventory, assist a sales consultant user in managing and replenishing local inventory, and assist a sales consultant user in fulfilling sales orders using local inventory. One example method that combines aspects of these technological improvements is described with reference to FIG. 11. FIG. 11 is a flow chart illustrating an example method for fulfilling an order using multiple available fulfillment methods according to one embodiment of the disclosure. A method 1100 may be executed by a mobile application executing on a mobile device and communicating with a server.

The method 1100 may begin at block 1102 with receiving customer information for one or more customers associated with a sales consultant user. For example, an address book may be imported into the mobile application or contacts may be manually input into the application. Then, at block 1104, local stock information may be received for goods stocked by the sales consultant user. For example, a sales consultant user may input information regarding current stock available in local inventory. The information of blocks 1102 and 1104 may be input to the mobile application such as by accessing menus within the user interface 200 of FIG. 2.

Next, at block 1106, the local inventory may be replenished, and an identifier for the replenishment package received, such as from a camera. That identifier may be used to uniquely identify a package shipped to the sales consultant user and may be used to look-up information regarding goods shipped from a central warehouse in the package. The replenishment package identifier may be received as, for example, a picture of a packing label or a picture of a product box as described with reference to the embodiments of FIG. 5, FIG. 6A, and FIG. 6B. At block 1108, the local stock information may be updated in the inventory database associated with the sales consultant user. Block 1108 may update a database stored on the mobile device and/or update a database stored on a remote server.

Next, at block 1110, a sales order may be received that is associated with one of the plurality of customers from block 1102 and associated with the sales consultant user. Then, at block 1112, it is determined whether the goods stocked by the sales consultant user in the local inventory are sufficient to fulfill the received sales order. If so, then a packing slip may be generated that lists items of the sales order with shipping information for the associated customer. If not all goods can be delivered from local inventory, then, at block 1114, a request may be generated and transmitted to a remote server indicating one or more items from the received sales order that should be fulfilled from a central warehouse and shipped to the customer. Items not fulfilled by the central warehouse may be delivered by hand or shipped by the sales consultant user. The sales order may be received and fulfilment methods determined through, for example, embodiments of a mobile application described with reference to the embodiments of FIG. 9 and FIG. 10.

As sales orders are fulfilled through local inventory and a consultant's local inventory is known, the mobile application may notify the consultant of times for replenishment packages and products to be included in a replenishment package may be determined for the consultant. The consultant may allow the replenishment to occur automatically, or the consultant may receive notifications when a replenishment package is suggested along with being presented suggested products for the replenishment package for the consultant's approval.

One method for automatically determining placing a replenishment order is shown in FIG. 12. FIG. 12 is a flow chart illustrating an example method for determining contents of a replenishment order for a sales consultant user according to one embodiment of the disclosure. A method 1200 may begin at block 1202 with tracking local inventory in a database by adding contents of replenishment packages and subtracting contents of fulfilled sales orders. Thus, a consultant's local inventory may be accurately known. Next, at block 1204, it is determined whether it is time for another replenishment order. For example, block 1204 may include determining an amount of time since the last replenishment package was received. As another example, block 1204 may include determining which products are out of stock in the local inventory. As a further example, block 1204 may include determining a number of items that are out of stock and the popularity of each of the out-of-stock items. If it is not determined to be time to replenish local inventory, the method 1200 proceeds back to block 1202 to continue tracking local inventory and waiting for a determination that a replenishment package should be requested.

If it is determined to be time to replenish local inventory, the method 1200 proceeds to block 1206 to assemble a list of products for a replenishment order. The list may be assembled based, at least in part, on archived sales orders for a certain past time period. For example, the replenishment order may include re-stocking of items that were recently delivered from local inventory. At block 1208, the assembled list of products may be transmitted to a server and communicated to a supplier that will ship a replenishment package to the consultant. An indication of a received replenishment order is received at block 1210, along with an image of the packaging for updating local inventory. The image may be processed, such as described in embodiments of FIG. 5, FIG. 6A, and FIG. 6B, to update local inventory with the contents of the replenishment order at block 1212.

Referring to assembling products for a replenishment order at block 1206 of FIG. 12, an example of a generated replenishment order is shown in FIG. 13. FIG. 13 is a screenshot of an example use of a mobile device to specify a replenishment order according to one embodiment of the disclosure. A sales consultant user may select a button on an inventory screen of the mobile application to begin a replenishment process. This will execute a function that will create a suggested inventory replenishment order based on recent sales orders fulfilled by the sales consultant user. The suggested inventory replenishment order may be generated through a user interface 1300. The user interface 1300 may include a first area 1302 allowing a consultant to specify start and end dates for reviewing archived sales orders to determine products for a replenishment package. After receiving a date range for sales orders (such as the past month or past quarter), goods may be identified from the sales orders in the selected time period and used to generate a list shown in second area 1304, which may be all items sold between the identified start and end dates. This list may be used as the basis for a replenishment order. In one embodiment, the sales consultant user may be directed to an online ordering system on the Internet to complete the inventory replacement order. The sales consultant user can edit the order to change quantities add/remove items prior to completing the purchasing of the items to replenish her inventory. The sales consultant may remain in complete control of the replenishment order at all times until it is processed. In another embodiment, the sales consultant user may change quantities and add/remove items in the mobile application, and then the mobile application may automatically send the list to a server to start a replenishment shipment.

Referring to determining it is time for another replenishment order at block 1204, a consultant may be notified through their mobile device that a replenishment order should be started. One example of such a notification is a push notification received by a mobile device and displayed in a notification list of the mobile device. FIG. 14 is a screenshot of example push notifications providing information regarding local inventor to a sales consultant user according to one embodiment of the disclosure. A user interface 1400 may include notifications 1402 and 1404 produced by embodiments of the mobile application described herein. A notification 1404 may indicate time for a replenishment order. Clicking on the notification 1404 may take the consultant to the user interface 1300 of FIG. 13. A notification 1402 may indicate a sales order has been received that requires the consultant's attention. Clicking on the notification 1402 may take the consultant to the user interface 1000 of FIG. 10 to assign a fulfilment method to the sales order or portions of the sales order.

Although different delivery techniques for items in a sales order are described above, such as a customer delivery service (CDS) and an EZShip service, the system described above may be implemented with additional delivery options. For example, another delivery option is peer-to-peer delivery. In peer-to-peer delivery a first sales consultant may have customer contact and complete a sale but a second sales consultant may deliver some or all of the items for the sale. Peer-to-peer delivery may allow quicker delivery of product to the customer. In some examples, peer-to-peer delivery may be used to supplement the first sales consultant's local inventory. For example, when the first sales consultant's local inventory is missing an item from an order, the first sales consultant may contact a second sales consultant to fulfill the one or more missing items to satisfy at least part of the order. As another example, some sales consultants may be only sales consultants, that is consultants that work with customers and handle orders, and some sales consultants may be only fulfillment consultants, that is consultants that work to deliver items to customers. Peer-to-peer delivery is described and compared with other delivery techniques in FIG. 15.

FIG. 15 is an illustration of a business model involving a sales consultant user with peer-to-peer delivery through a fulfillment consultant according to some embodiments of the disclosure. In the delivery system shown in FIG. 15, goods may be delivered from the warehouse central inventory 102 in replenishment packages 114 to restock local inventory 110 and 1510 of the sales consultant users 112 and 1512, respectively. The local inventory 110 and 1510 for each sales consultant user 112 and 1512 may be customized to each consultant's business and/or customers. The sales consultant users 112 may make sales to customers 122 through meetings. These sales may be fulfilled from local inventory 110 or central inventory 102. Furthermore, different fulfillment methods may be used to fulfill orders from the inventories 102 and 110. For example, peer-to-peer delivery may be used to fulfill orders from one consultant's customers from another consultant's local inventory. In peer-to-peer delivery, a sale by sales consultant 112 to customers 122 may be fulfilled from inventory 1510 of sales consultant 1512. After a sales order is entered by the sales consultant 112 to their mobile device, the sales consultant may use the mobile device to request delivery of some or all of the goods from the sales order by other sales consultants. For example, a server (not shown) may process the request, analyze databases, and identify one or more other sales consultants capable of delivering some or all of the goods. If the sales consultant 1512 is identified by the server, the sales consultant 1512 may receive the request on their mobile device. The sales consultant 1512 may then deliver goods 1514 from their local inventory 1510 to fulfill in part or in whole the sales order. In some embodiments, the server may select the sales consultant 1512 based on a geographic location nearby to the customers 122. Such an arrangement may significantly reduce delivery time to the customers 122. For example, sales consultant 1512 may be able to deliver goods in the sales order within minutes or hours, rather than the days that may be required to deliver from central inventor 102.

A sales consultant, such as sales consultant 1512, may first indicate they are willing to make delivery on other sales consultants' sales. The sales consultant 1512 may change a setting in a mobile application executing on their mobile device. The mobile device may report that indication to a server, which may also be tracking the local inventory 1510 of the sales consultant 1512. The server is thus able to determine sales consultants that capable of fulfilling sales orders. Although operation with a server for coordinating delivery consultants is described in some examples, the peer-to-peer delivery may also be coordinated without a server.

After making a sale to customers 122, a sales consultant 112 may choose to have the order fulfilled through peer-to-peer delivery. In some embodiments, the sales consultant's mobile device or a server may automatically assign peer-to-peer delivery when the local inventory 110 of sales consultant 112 is insufficient to deliver part or all of the sale. After peer-to-peer delivery is selected, a server may perform data analysis to identify consultants based on one or more criteria to make the delivery. Some example criteria include whether a sales consultant has inventory available for the items contained in the order, whether a sales consultant is within a close geographic proximity to the delivery address, and/or whether a sales consultant has opted in for making deliveries. In some operations, the server may apply an algorithm to determine a best match sales consultant, and that best match sales consultant is instructed or offered the opportunity to complete the delivery. If the best match sales consultant declines or fails to respond in a specified period of time, a next best match may be identified, and the process continued until delivery is made. In some operations, a list of consultants meeting certain criteria may be identified and each of them may be notified through a communication that there is a delivery available in their area. A first sales consultant to accept the delivery may be given the order for delivery and the communication to other sales consultants may be revoked. After delivery is made, the delivering sales consultant and customer may each acknowledge the delivery as complete, and delivery fees may be paid to the delivering sales consultant. In some embodiments, the delivery may be made to the selling consultant, who then delivers the goods to the customer. In some embodiments, system checks may be put in place to ensure that customer poaching is inhibited or prohibited, including customer surveys and customer information pattern matching.

In some embodiments, a server may be operated to coordinate peer-to-peer delivery and track inventory of sales consultants. One example method for the tracking and coordinating is described with reference to the flow chart of FIG. 16. FIG. 16 is a flow chart illustrating an example method for peer-to-peer delivery by a fulfilment consultant according to some embodiments of the disclosure. A method 1600 may begin at block 1602 with receiving local stock information for a selling consultant. The local stock information may include initial stock information, sales or other disbursements from local stock, and/or replenishment packages added to local stock. At block 1604, a sales order taken by the selling consultant may be received by the server. The sales order may include a list of one or more items sold to a customer and/or information regarding the customer, such as a delivery address for the sold items. At block 1606, the server may determine if the sales order can be fulfilled from the local stock information for the selling consultant. If so, the sold items may be deducted from the local stock information at block 1608. If not, the server may determine if one or more sold items may be fulfilled by another consultant at block 1610. If so, a request may be generated to the other consultant to deliver the items in the sales order at block 1612. The determination at block 1610 as to whether another consultant can fulfill the order may take into consideration factors such as geographical location of the consultants, local stock information of the consultants, and previous indications by the consultants as willing to participate in peer-to-peer delivery. After delivery, the local stock information of the fulfilling consultant may be deducted based on the delivered items.

The organization of peer-to-peer delivery by a server may involve communications between a plurality of devices and the server to arrange for the delivery of sold items. One example of such communications is illustrated in FIG. 17. FIG. 17 is a call diagram illustrating communications between consultants and a server for organizing peer-to-peer delivery according to some embodiments of the disclosure. A plurality of sales consultants 1702 with first device 1702A, second device 1702B, and third device 1702C may interact with one or more servers, such as server 1704A. The devices 1702A-C may be mobile devices executing a mobile application, such as the one described with reference to FIGS. 1-15, that configures the processor of the mobile device to receive customer information, receive a sales order for a customer, and organize delivery of sold items in the sales order through peer-to-peer delivery or another delivery technique. The various communications described throughout FIG. 17 may be carried out through a network communications adapter of the server 1704A and devices 1702A-C. The network communications adapter may be one of a wide area network (WAN) adapter, such as a cellular communications modem for 3G, 4G, or 5G wireless technologies, a local area network (LAN) adapter, such as a Wi-Fi network adapter, or a short-range adapter, such as radio frequency ID (RFID) or Bluetooth network adapters.

An operation may begin at transmissions 1712 and 1714 with local stock information for a plurality of sales consultants being transmitted to the server 1704A from the devices 1702A-C. A sales order may be entered to device 1702A by a first sales consultant, upon which the device 1702A transmits 1716 a request for one or more products from other consultants. The requested products may be certain sold items from the sales order, such as sold items that the first sales consultant does not have in their local inventory. The server 1704A, at processing step 1718, may identify a potential fulfilling consultant from the second and third sales consultants and other sales consultants. The identification may include, for example, determining if either of the second, third, or other sales consultants have local inventory of one or more of the sold items and is in a specific geographical region, such as within a 25 mile radius of a delivery address for the sales order. The server 1704A may transmit 1720 a request to deliver certain goods to the second and third sales consultants that are identified by processing 1718. The transmission 1720 may be transmitted over the Internet to devices 1702B and 1702C assigned to the second and third sales consultants. The request may appear as, for example, a push notification on the devices 1702B and 1702C. One of the sales consultants, such as the third sales consultant, may accept the request by transmitting 1722 an acceptance and transmitting 1724 a delivery confirmation to the server 1704A. When the server 1704A receives the acceptance in transmission 1722, the server 1704A may transmit notification to device 1702B that the request in transmission 1720 is cancelled. When the server 1704A receives the delivery confirmation in transmission 1724, the server 1704 may transmit 1726 a delivery confirmation to the mobile device 1702A to inform the first sales consultant that the sales order has been fulfilled. In one example, the server 1704A may wait to transmit the confirmation in transmission 1726 until a customer also confirms delivery of the sold item by the third sales consultant.

Processing 1718 to identify potential fulfilling consultants may apply an algorithm for finding one or more potential fulfilling consultants based on a number of criteria. One example algorithm for determination is shown in the flow chart of FIG. 18. FIG. 18 is a flow chart illustrating an example method for identifying consultants for completing a peer-to-peer delivery request according to some embodiments of the disclosure. A method 1800 may begin at block 1802 with filtering a list of sales consultants in a database by selecting a subset of sales consultants that have indicating interest in accepting fulfillment request for peer-to-peer delivery. At block 1804, that subset may be further filtered to select sales consultants having local stock of sold items in the sales order. At block 1806, that subset may be still further filtered based on a geographical location of the sales consultants. The remaining subset of sales consultants may be contacted with the request. In some operations, one or a few sales consultants of the remaining subset of sales consultants may be contacted with the request by prioritizing the matched subset of sales consultants.

Operation with a server for organizing peer-to-peer delivery is described in examples above. However, a server is not required to coordinate peer-to-peer delivery. In some embodiments, the peer-to-peer delivery may be coordinated among sales consultants with or without the assistance of a server. One example of a server-less coordination of sales consultants is described with reference to FIG. 19. FIG. 19 is an illustration of direct communications between consultants for organizing peer-to-peer delivery according to some embodiments of the disclosure. FIG. 19 shows communication directly between user devices assigned to sales consultants. Sales consultants may be organized into groups 1902 and 1904. Each group may correspond to sales consultants with a particular type of local inventory and/or a particular geographical region. For example, group 1902 may include user devices 1702A-D of sales consultants in the Houston area and group 1904 may include user devices 1704A-D of sales consultants in the Dallas area. When a first sales consultant enters a sales order into their mobile device 1702A, the user device 1702A may determine that the first sales consultant's local inventory is insufficient to satisfy the sales order. The user device 1702A may transmit a request to other user devices 1702A-D in the group 1902 for some or all sold items in the sales order. Transmissions within group 1902 may be performed through many different communications techniques. For example, user devices 1702A-D may be part of a group electronic mailing list. In this example, the user device 1702A may send the request as an email message to houston-area@salesconsultants.com, which would be distributed to the user devices 1702A-D. As another example, user devices 1702A-D may be part of a simple messaging service (SMS) or multimedia messaging service (MMS) group, such that the user device 1702A may send the request as a message over a cellular communication system. As a further example, user devices 1702A-D may be within short-range communication of each other, such that transmissions may occur over a local area network (LAN) such as Wi-Fi or a low power network such as Bluetooth. In each example, the user devices 1702A-D may receive the message, process it within the mobile application, and generate a notification for the sales consultants.

In some embodiments, a second group 1904 may be identified as a lower priority group for receiving peer-to-peer delivery requests. A request may be transmitted to user devices 1704A-D of the group 1904 when no acceptance is received from the group 1902. For example, the group 1904 may be contacted if all sales consultants in group 1902 decline the request or if no sales consultant in group 1902 responds within a specified period of time, such as one hour. When a sales consultant accepts the request, a corresponding one of the user devices 1702B-D or 1704A-D may transmit an acceptance directly to the mobile device 1702A, such as through email, cellular messaging, or any other transmission technique through a network communications adapter of the device.

Another example of a server-less coordination of sales consultants is described with reference to FIG. 20. FIG. 20 is an illustration of relay communications between consultants for organizing peer-to-peer delivery according to some embodiments of the disclosure. Requests for peer-to-peer delivery of goods may be communicated by peer-to-peer communications techniques, such as by relaying messages between user devices or operating the user devices as a mesh network. The user device 1702A may transmit a request for peer-to-peer delivery 1702A to device 1702B. The device 1702B may then communicate the request to device 1702C, which communicates the request to device 1702D. If any of the devices 1702B-D accept the request, an acceptance may be transmitted back through the relay to device 1702A. In one example, each user device may wait for a response (or wait a specified period for a response) from a sales consultant before transmitting the request to the next device in the relay. For example, the device 1702B may only transmit the request to device 1702C after the sales consultant declines the request. The group 1904 may likewise be organized as a relay network with a point-of-contact at device 1704A. Thus, the user device may transmit a request to device 1704A, which will relay to device 1704B and then device 1704C. Communications through the groups 1902 and 1904 may be by any communications technique, such as email, cellular messaging, Wi-Fi, or Bluetooth as described above.

Peer-to-peer delivery provides fast delivery of goods to customers by leveraging the existing inventory of sales consultants that are distributed across the globe. Further, peer-to-peer delivery opens sales consultant opportunities to drivers who do not wish to focus on customer relationships. Furthermore, each individual sales consultant may be able to reduce or eliminate local inventory while still maintaining high levels of customer service. The peer-to-peer delivery speed may provide a competitive advantage over other channels, such as online or unauthorized distribution channels.

The peer-to-peer delivery described in the examples above is made possible by organizing information into databases, analyzing the information in the databases, and/or specific communication techniques between mobile devices and/or between mobile devices and servers. For example, the storage of local inventory information on a server for sales consultants may allow quick determinations regarding sales consultants that can be used to provide peer-to-peer delivery and obtain quick delivery of the sold product. The coordination of and implementation of peer-to-peer delivery as described in examples herein are processes not before performed in the delivery of goods through sales channels. This new methods and implementations improve upon computer-related technology and communications-related technology to improve the sales process that used to be performed manually by sales consultants. Consumer satisfaction is often highest when good are provided at the time of exchange of money or shortly thereafter. In fact, waiting days for delivery can often turn a customer away from a purchase. The peer-to-peer delivery technique described herein may allow recapture of that sales and improvement of the consumer's satisfaction with the delivered product. Further, the peer-to-peer delivery technique may be incorporated with other delivery techniques through the mobile application and communication procedures described above to also allow for delivery of a wide-range of products by utilizing the central inventory.

The schematic flow chart diagrams of FIG. 7, FIG. 8, FIG. 11, FIG. 12, FIG. 16, FIG. 17, and FIG. 18 are generally set forth as a logical flow chart diagram. As such, the depicted order and labeled steps are indicative of aspects of the disclosed method. Other steps and methods may be conceived that are equivalent in function, logic, or effect to one or more steps, or portions thereof, of the illustrated method. Additionally, the format and symbols employed are provided to explain the logical steps of the method and are understood not to limit the scope of the method. Although various arrow types and line types may be employed in the flow chart diagram, they are understood not to limit the scope of the corresponding method. Indeed, some arrows or other connectors may be used to indicate only the logical flow of the method. For instance, an arrow may indicate a waiting or monitoring period of unspecified duration between enumerated steps of the depicted method. Additionally, the order in which a particular method occurs may or may not strictly adhere to the order of the corresponding steps shown.

The operations described above may be performed by any circuit configured to perform the described operations. Such a circuit may be an integrated circuit (IC) constructed on a semiconductor substrate and include logic circuitry, such as transistors configured as logic gates, and memory circuitry, such as transistors and capacitors configured as dynamic random access memory (DRAM), electronically programmable read-only memory (EPROM), or other memory devices. The logic circuitry may be configured through hard-wire connections or through programming by instructions contained in firmware. Further, the logic circuity may be configured as a general purpose processor capable of executing instructions contained in software.

If implemented in firmware and/or software, functions described above may be stored as one or more instructions or code on a computer-readable medium. Examples include non-transitory computer-readable media encoded with a data structure and computer-readable media encoded with a computer program. Computer-readable media includes physical computer storage media. A storage medium may be any available medium that can be accessed by a computer. By way of example, and not limitation, such computer-readable media can comprise random access memory (RAM), read-only memory (ROM), electrically-erasable programmable read-only memory (EEPROM), compact disc read-only memory (CD-ROM) or other optical disk storage, magnetic disk storage or other magnetic storage devices, or any other medium that can be used to store desired program code in the form of instructions or data structures and that can be accessed by a computer. Disk and disc includes compact discs (CD), laser discs, optical discs, digital versatile discs (DVD), floppy disks and Blu-ray discs. Generally, disks reproduce data magnetically, and discs reproduce data optically. Combinations of the above should also be included within the scope of computer-readable media.

In addition to storage on computer readable medium, instructions and/or data may be provided as signals on transmission media included in a communication apparatus. For example, a communication apparatus may include a transceiver having signals indicative of instructions and data. The instructions and data are configured to cause one or more processors to implement the functions outlined in the claims.

Although the present disclosure and certain representative advantages have been described in detail, it should be understood that various changes, substitutions and alterations can be made herein without departing from the spirit and scope of the disclosure as defined by the appended claims. Moreover, the scope of the present application is not intended to be limited to the particular embodiments of the process, machine, manufacture, composition of matter, means, methods and steps described in the specification. For example, although mobile devices with and mobile applications executing on general purpose central processor units (CPUs) are described throughout the detailed description, aspects of the invention may be applied to the execution of other software executing on other processors, such as graphics processing units (GPUs) and digital signal processors (DSPs). As one of ordinary skill in the art will readily appreciate from the present disclosure, processes, machines, manufacture, compositions of matter, means, methods, or steps, presently existing or later to be developed that perform substantially the same function or achieve substantially the same result as the corresponding embodiments described herein may be utilized. Accordingly, the appended claims are intended to include within their scope such processes, machines, manufacture, compositions of matter, means, methods, or steps. 

What is claimed is:
 1. A method, comprising: receiving, by a server from a first device, first local stock information for goods stocked by a first sales consultant user; receiving, by the server from the first device, an indication of goods in a sales order for a customer of the first sales consultant user that cannot be fulfilled by the first sales consultant user according to the first lock stock information; determining, by the server, whether the sales order can be fulfilled at least in part from a second local stock information for goods stocked by a second sales consultant user; and transmitting, by the server to a second device, a request for the second sales consultant user to deliver the goods to the customer when the sales order can be fulfilled at least in part by the second sales consultant user.
 2. The method of claim 1, wherein the request for the second sales consultant user comprises a request for all items of the received sales order.
 3. The method of claim 1, further comprising: receiving, by the server from the second device, an acceptance of the request by the second sales consultant; receiving, by the server from the second device, a confirmation of delivery in completion of the request by the second sales consultant; and transmitting, by the server to the first device, a confirmation of the delivery for the first sales consultant.
 4. The method of claim 3, further comprising deducting, by the server, modifying the second local stock information to deduct the delivered goods after receiving the acceptance of the request from the second device.
 5. The method of claim 1, wherein the step of determining whether the sales order can be fulfilled from the second local stock information comprises: filtering, by the server, a plurality of consultants based, at least in part, on at least one of whether a consultant has agreed to accept fulfillment requests and whether a consultant is a geographic match to the customer of the first sales consultant; determining, by the server, whether the sales order can be fulfilled from a local stock of one of the filtered plurality of consultants; and selecting, by the server, the second sales consultant from the filtered plurality of consultants when the second local stock information indicates the sales order can be fulfilled at least in part from a second local stock information for goods stocked by a second sales consultant user.
 6. The method of claim 1, further comprising: receiving, by the server from the first device, a stock replenishment package identifier for a package containing goods shipped from a central warehouse; and updating, by the server, the first local stock information for the first sales consultant user based, at least in part, on the received stock replenishment package identifier.
 7. An apparatus, comprising: a memory; a network communications adapter; a processor coupled to the memory and to the network communications adapter, wherein the processor is configured to perform steps comprising: receiving, from a first device through the network communications adapter, first local stock information for goods stocked by a first sales consultant user; receiving, from the first device through the network communications adapter, an indication of goods in a sales order for a customer of the first sales consultant user that cannot be fulfilled by the first sales consultant user according to the first lock stock information; determining, by the processor, whether the sales order can be fulfilled at least in part from a second local stock information for goods stocked by a second sales consultant user; and transmitting, to a second device through the network communications adapter, a request for the second sales consultant user to deliver the goods to the customer when the sales order can be fulfilled at least in part by the second sales consultant user.
 8. The apparatus of claim 7, wherein the request for the second sales consultant user comprises a request for all items of the received sales order.
 9. The apparatus of claim 7, wherein the processor is further configured to perform steps comprising: receiving, from the second device through the network communications adapter, an acceptance of the request by the second sales consultant; receiving, from the second device through the network communications adapter, a confirmation of delivery in completion of the request by the second sales consultant; and transmitting, to the first device through the network communications adapter, a confirmation of the delivery for the first sales consultant.
 10. The apparatus of claim 9, wherein the processor is further configured to perform steps comprising deducting, by the server, modifying the second local stock information to deduct the delivered goods after receiving the acceptance of the request from the second device.
 11. The apparatus of claim 7, wherein the step of determining whether the sales order can be fulfilled from the second local stock information comprises: filtering, by the processor, a plurality of consultants based, at least in part, on at least one of whether a consultant has agreed to accept fulfillment requests and whether a consultant is a geographic match to the customer of the first sales consultant; determining, by the processor, whether the sales order can be fulfilled from a local stock of one of the filtered plurality of consultants; and selecting, by the processor, the second sales consultant from the filtered plurality of consultants when the second local stock information indicates the sales order can be fulfilled at least in part from a second local stock information for goods stocked by a second sales consultant user.
 12. The apparatus of claim 7, wherein the processor is further configured to perform steps comprising: receiving, from the first device through the network communications adapter, a stock replenishment package identifier for a package containing goods shipped from a central warehouse; and updating, by the processor, the first local stock information for the first sales consultant user based, at least in part, on the received stock replenishment package identifier.
 13. A method, comprising: receiving, by a first device, customer information for a plurality of customers associated with a first sales consultant user; receiving, by the first device, local stock information for goods stocked by the first sales consultant user; receiving, by the first device, a sales order for a customer of the plurality of customers, wherein the sales order lists one or more sold items; determining, by the first device, whether the goods stocked by the first sales consultant user listed in the local stock information are sufficient to fulfill the received sales order; transmitting, by the first device, a request for at least one of the one or more sold items from a second sales consultant user when the goods stocked by the first sales consultant user are determined insufficient to fulfill the received sales order.
 14. The method of claim 13, wherein the step of transmitting the request comprises the first device transmitting the request to a server, and wherein the method further comprises receiving a delivery confirmation from the server indicating that the request was fulfilled.
 15. The method of claim 13, wherein the step of transmitting the request comprises the first device transmitting the request to a plurality of devices, and wherein the method further comprises receiving a delivery confirmation from a second device of the plurality of devices indicating that the request was fulfilled.
 16. The method of claim 13, wherein the step of transmitting the request comprises the first device transmitting the request to a second device for distribution to at least one other device, and wherein the method further comprises receiving a delivery confirmation from the second device indicating that the request was fulfilled.
 17. An apparatus, comprising: a first device, comprising: a memory; a network communications adapter; and a processor coupled to the memory and to the network communications adapter, wherein the processor is configured to perform steps comprising: receiving, by the processor of the first device, customer information for a plurality of customers associated with a first sales consultant user; receiving, by the processor of the first device, local stock information for goods stocked by the first sales consultant user; receiving, by the processor of the first device, a sales order for a customer of the plurality of customers, wherein the sales order lists one or more sold items; determining, by the processor of the first device, whether the goods stocked by the first sales consultant user listed in the local stock information are sufficient to fulfill the received sales order; transmitting, through the network communications adapter of the first device, a request for at least one of the one or more sold items from a second sales consultant user when the goods stocked by the first sales consultant user are determined insufficient to fulfill the received sales order.
 18. The apparatus of claim 17, wherein the processor of the first device is configured to transmit the request by transmitting the request to a server, and wherein the processor of the first device is further configured to receive a delivery confirmation from the server indicating that the request was fulfilled.
 19. The apparatus of claim 17, wherein the processor of the first device is configured to transmit the request by transmitting the request to a plurality of devices, and wherein the processor of the first device is further configured to receive a delivery confirmation from a second device of the plurality of devices indicating that the request was fulfilled.
 20. The apparatus of claim 17, wherein the processor of the first device is configured to transmit the request by transmitting the request to a second device for distribution to at least one other device, and wherein the processor of the first device is further configured to receive a delivery confirmation from the second device indicating that the request was fulfilled. 